home *** CD-ROM | disk | FTP | other *** search
/ Zoom 2 / Zoom - Release 2 (1996)(Active Software)[!].iso / programming / amigae / xpk25edev / source / xpksub.e < prev   
Encoding:
Text File  |  1996-01-17  |  2.7 KB  |  93 lines

  1. /*
  2. **    $Filename: xpknuke.h $
  3. **    $Release: 0.9 $
  4. **
  5. **    (C) Copyright 1991 U. Dominik Mueller & Christian Schneider
  6. **        All Rights Reserved
  7. */
  8.  
  9.  
  10. OPT MODULE
  11. OPT EXPORT
  12.  
  13.  
  14. MODULE 'libraries/xpk'
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21. /**************************************************************************
  22.  *
  23.  *                     The XpkInfo structure
  24.  *
  25.  */
  26.  
  27.  
  28. -> Sublibs return this structure to xpkmaster when asked nicely
  29. -> This is version 1 of XpkInfo.  It's not #define'd because we don't want
  30. -> it changing automatically with recompiles - you've got to actually update
  31. -> your code when it changes.
  32. OBJECT xpkInfo
  33.   xpkInfoVersion  :INT  -> (unsigned) Version number of this structure
  34.   libVersion      :INT  -> (unsigned) The version of this sublibrary
  35.   masterVersion   :INT  -> (unsigned) The required master lib version
  36.   modesVersion    :INT  -> (unsigned) Version number of mode descriptors
  37.  
  38.   name        :PTR TO CHAR  -> Brief name of the packer, 20 char max
  39.   longName    :PTR TO CHAR  -> Full name of the packer   30 char max
  40.   description :PTR TO CHAR  -> Short packer desc., 70 char max
  41.  
  42.   id            :LONG -> ID the packer goes by (XPK format)
  43.   flags         :LONG -> Defined below
  44.   maxPkInChunk  :LONG -> Max input chunk size for packing
  45.   minPkInChunk  :LONG -> Min input chunk size for packing
  46.   defPkInChunk  :LONG -> Default packing chunk size
  47.  
  48.   packMsg     :PTR TO CHAR  -> Packing message, present tense
  49.   unpackMsg   :PTR TO CHAR  -> Unpacking message, present tense
  50.   packedMsg   :PTR TO CHAR  -> Packing message, past tense
  51.   unpackedMsg :PTR TO CHAR  -> Unpacking message, past tense
  52.  
  53.   defMode       :INT  -> (unsigned) Default mode number
  54.   pad           :INT  -> (unsigned) for future use
  55.  
  56.   modeDesc    :PTR TO xpkMode -> List of individual descriptors
  57.  
  58.   reserved[6] :ARRAY -> (unsigned) Future expansion - set to zero
  59.  
  60. -> LABEL xi_SIZEOF
  61.  
  62. ENDOBJECT
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69. /**************************************************************************
  70.  *
  71.  *                     The XpkSubParams structure
  72.  *
  73.  */
  74.  
  75. OBJECT xpkSubParams
  76.   inBuf     :LONG   -> (APTR) The input data
  77.   inLen     :LONG   ->        The number of bytes to pack
  78.   outBuf    :LONG        -> (APTR) The output buffer
  79.   outBufLen :LONG      ->        The length of the output buf
  80.   outLen    :LONG   ->        Number of bytes written
  81.   flags     :LONG   ->        Flags for master/sub comm.
  82.   number    :LONG   ->        The number of this chunk
  83.   mode      :LONG        ->        The packing mode to use
  84.   password  :LONG   -> (APTR) The password to use
  85.  
  86.   arg[4]  :ARRAY OF LONG  ->  Reserved; don't use
  87.   sub[4]  :ARRAY OF LONG  ->  Sublib private data
  88. ENDOBJECT
  89.  
  90. CONST XSF_STEPDOWN  = 1,  -> May reduce pack eff. to save mem
  91.       XSF_PREVCHUNK = 2   -> Previous chunk available on unpack
  92.  
  93.